.wii-clearfix() {
  &:after {
    content     : '\0020';
    display     : block;
    height      : 0;
    font-size   : 0;
    clear       : both;
    overflow    : hidden;
    visibility  : hidden;
  }
}

.wii-inline-block() {
  display         : inline-box;
  -webkit-box-orient : vertical;
  display         : inline-block;
}

.wii-ellipsis() {
  overflow      : hidden;
  text-overflow : ellipsis;
  white-space   : nowrap;
  word-wrap     : normal;
}

.wii-justify() {
  text-align   : justify;
  &:after{
    .wii-inline-block;
    content    : '';
    width      : 100%;
    height     : 0;
    visibility : hidden;
  }
}

.wii-vertical-justify() {
  text-align   : justify;
  writing-mode : vertical-lr;
  &:after{
    .wii-inline-block;
    content    : '';
    width      : 0;
    height     : 100%;
    visibility : hidden;
  }
}

.wii-text-wrap() {
  white-space : pre-wrap;
  word-wrap   : break-word;
}

.wii-opacity(@opacity: 0) {
  opacity : @opacity;
}

.wii-min-height(@height: 0) {
  min-height : @height;
  height     : auto !important;
  height     : @height;
}

.wii-min-width(@width: 0) {
  min-width : @width;
  width     : auto !important;
  width     : @width;
}

.wii-linear-gradient(@gradient){
  background : -webkit-linear-gradient(@gradient);
  background : linear-gradient(@gradient);
}

.wii-radial-gradient(@gradient){
  background : -webkit-radial-gradient(@gradient);
  background : radial-gradient(@gradient);
}

.wii-user-select(@selectable: none){
  -webkit-user-select : @selectable;
  user-select    : @selectable;
}


.wii-center(@width, @height){
	width: @width;
	height: @height;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translateX(-50%, -50%);
}


.wii-center-flex(){
	display: flex;
	justify-content: center;
	align-items: center;
}

.wii-full(@position: absolute){
	position: @position;
	left: 0;
	top: 0;
	bottom: 0;
	right: 0;
}
